#ifndef _GPRS_H_
#define _GPRS_H_

/*头文件*/
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <termios.h>
#include <unistd.h>
#include <stdio.h>
#include <errno.h>
#include <string.h>
#include <unistd.h>
#include <stdlib.h>
#include <stdbool.h>/* 编码转换 */
#include <iconv.h>


/* 宏定义 */
#define err_log(log)\
	do{perror(log);\
		exit(1);\
	}while(0)

#define PHNO_CENT 1
#define PHNO_RECV 2

/* 类型定义 */
typedef struct {
	char _1_part[7];
	char _2_phno_center[13];
	char _3_part[11];
	char _4_phno_recv[13];
	char _5_part[7]; 
	char _6_len[4];
	char _7_content[280];
}pdu_t;

/*函数声明 */
int init_serial(int fd);
int set_phno(pdu_t *pdu,int type, char *phno);
int send_sms(int fd, pdu_t *pdu, char *content);
int utf8_to_unicode (char *inbuf, size_t *insize, char *outbuf, size_t *outsize);

#endif
